Method and apparatus for providing a logical separation of a customer device and a service device connected to a data storage system

ABSTRACT

A data storage system includes storage array and a switch that is configurable to create numerous network topologies within the system and to maintain separate communications paths between different computerized devices or networks and the storage array. For example, a user device and a service device, such as a system diagnosis device, can connect to the storage array through the switch. In order to isolate interaction or communication between the user and service devices, the switch can be logically partitioned into two distinct switches to form two distinct, isolated communications paths between the devices and the storage array. With isolated communications pathways established in the switch, in use, the service device is unable to access the user device coupled to the storage array.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is related to U.S. patent application Ser. No. ______,filed on even date herewith, entitled “METHOD AND APPARATUS FORDETECTING THE PRESENCE OF ERRORS IN DATA TRANSMITTED BETWEEN COMPONENTSIN A DATA STORAGE SYSTEM USING AN I2C PROTOCOL”, the contents andteachings of which are hereby incorporated by reference in theirentirety.

BACKGROUND

A typical data storage system stores and retrieves data for one or moreexternal host devices (or simply hosts). Such a data storage systemtypically includes processing circuitry and a set of disk drives. Ingeneral, the processing circuitry performs load and store operations onthe set of disk drives on behalf of the hosts. For example, conventionalprocessing circuitry includes one or more ports, such as Ethernet ports,that allow the host devices to connect to the processing circuitry inorder to exchange data with the disk drives.

On occasion, the data storage system may require servicing by atechnician. To this end, the technician typically goes to the locationwhere the data storage system resides and performs a service procedureon the data storage system. For example, the system may require ahardware or software upgrade in order to integrate a design improvementor to fix a design defect. As another example, a circuit board of theprocessing circuitry or a disk drive may fail and require replacement.

Prior to servicing the data storage system, the technician typicallyconnects a service device, such as a portable computer, to the system inorder to perform a system diagnosis. In certain cases, the data storagesystem includes a single access port dedicated to host access of thestorage system. Therefore, in order to diagnose the storage system theservice technician must disconnect the host connection from the port andconnect the service device to the storage system through the port. Inother cases, the data storage system includes two access ports: a hostport dedicated for connection to host devices and a service portdedicated for technician access to the data storage system. In thesesystems, the technician can connect the service device to the serviceport to perform a diagnosis of the storage system.

SUMMARY

As indicated above, conventional data storage systems typically includeone or more ports that provide a technician with direct access to thesystem, via a portable computer, in order to diagnose and service thesystems. There are, however, deficiencies with the configuration ofconventional data storage systems with respect to providing technicianaccess. For example, as indicated above, certain storage systems provideonly a single port for access by either a host device or a servicedevice. In such a case, in order to diagnose the data storage system, atechnician must disconnect the host device from the port and connect theservice device to the storage system through the port. Such a processdisrupts the host device's access to the storage system.

In another example, also as indicated above, the data storage systemincludes two access ports: a host port dedicated for connection to hostdevices and a service port dedicated for technician access to the datastorage system. However, the ports do not typically include any type ofsecurity mechanisms to prevent communications from occurring betweendevices attached to the ports. As a result, the service device connectedto the service port can access the host device or a network of hostdevices connected to the host port. In such a case, when the technicianconnects the service device to the service port to perform a diagnosisof the storage system, the service device can potentially gainunauthorized access to data stored on the host devices or introduce acomputer virus to the host devices. Based upon the typical configurationof the host and service ports, while a service device can be used toservice the storage system, it can also potentially disrupt operation ofthe host devices.

By contrast to conventional powered devices, embodiments of theinvention are directed to a method and apparatus for providing a logicalseparation of a customer device and a service device connected to a datastorage system. A data storage system includes storage array and aswitch that is configurable to create numerous network topologies withinthe system and to maintain separate communications paths betweendifferent computerized devices or networks and the storage array. Forexample, a user device and a service device, such as a system diagnosisdevice, can connect to the storage array through the switch. In order toisolate interaction or communication between the user and servicedevices, the switch can be logically partitioned into two distinctswitches to form two distinct, isolated communications paths between thedevices and the storage array. With isolated communications pathwaysestablished in the switch, in use, the service device is unable toaccess the user device coupled to the storage array. As such, theisolated communications pathways limit or prevent the service devicefrom accessing data stored on the user device or from spreadingpotentially malicious data or files, such as computer viruses to theuser device.

In one embodiment, the invention relates to a method of forming acommunication pathway with a storage array in a communicationsmanagement device. The method includes connecting a switch of thecommunications management device with a storage processor of the storagearray, the storage processor having a management port and a serviceport, the management port configured to provide a first device withaccess to the storage array and the service port configured to provide asecond device with access to the storage array. The method also includesconfiguring a virtual local area network of the switch to establish afirst communications path of the switch and a second communications pathof the switch, the first communications path being isolated form thesecond communications path. The method further includes conveying databetween (i) a first port of the communications management device and atleast one of the management port and the service port of the storageprocessor using the first communications path and (ii) a second port ofthe communications management device and at least one of the managementport and the service port of the storage processor using the secondcommunications path. The presence of the communications paths allowsboth user devices and service devices to access the storage array whileminimizing or spreading of potentially malicious data or files, such ascomputer viruses, between the devices.

In one arrangement, a communications management device includes a firstport, a second port, a switch electrically coupled to the first port andthe second port, and a controller electrically coupled to the switch.The controller of the communications management device is configured toconnect the switch of the communications management device with astorage processor of the storage array where the storage processorincludes a management port and a service port, the management portconfigured to provide a first device with access to the storage arrayand the service port configured to provide a second device with accessto the storage array. The controller is further operable to configure avirtual local area network of the switch to establish a firstcommunications path of the switch and a second communications path ofthe switch, the first communications path being isolated form the secondcommunications path. The first communications path is operable to conveydata between the first port of the communications management device andat least one of the management port and the service port of the storageprocessor and the second communications path is operable to convey databetween the second port of the communications management device and atleast one of the management port and the service port of the storageprocessor.

In one arrangement, a data storage system includes a storage arrayhaving a storage processor and a communications management device. Thestorage processor includes a management port and a service port wherethe management port is configured to provide a first network with accessto the storage array and the service port is configured to provide asecond network with access to the storage array. The communicationsmanagement device includes a first port, a second port, a switchelectrically coupled to the first port and the second port, and acontroller electrically coupled to the switch. The controller isoperable to connect the switch of the communications management devicewith the storage processor of the storage array. The controller isfurther operable to configure a virtual local area network of the switchto establish a first communications path of the switch and a secondcommunications path of the switch, the first communications path beingisolated form the second communications path. The first communicationspath is operable to convey data between the first port of thecommunications management device and at least one of the management portand the service port of the storage processor. The second communicationspath is operable to convey data between the second port of thecommunications management device and at least one of the management portand the service port of the storage processor.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, features and advantages of theinvention will be apparent from the following description of particularembodiments of the invention, as illustrated in the accompanyingdrawings in which like reference characters refer to the same partsthroughout the different views. The drawings are not necessarily toscale, emphasis instead being placed upon illustrating the principles ofthe invention.

FIG. 1 illustrates a schematic representation of a data storage system,according to one embodiment of the invention.

FIG. 2 is a flowchart that illustrates a procedure performed by acommunication management device of FIG. 1, according to one embodimentof the invention.

FIG. 3 illustrates a schematic representation of the communicationmanagement device of FIG. 1, according to one embodiment of theinvention.

FIG. 4 illustrates a configuration of the communication managementdevice of FIG. 3 when electrically coupled to a storage area network(SAN), according to one embodiment of the invention.

FIG. 5 illustrates a configuration of the communication managementdevice of FIG. 3 when the storage array includes a network attachedstorage (NAS) device, according to one embodiment of the invention.

FIG. 6A illustrates a configuration of the data storage system havingredundant communication management devices.

FIG. 6B illustrates a configuration of the data storage system of FIG.6A having switches configured to provide communication between the portsof the redundant communication management devices and the ports of theredundant storage processors of the data storage system, according toone embodiment of the invention.

DETAILED DESCRIPTION

Embodiments of the invention are directed to a method and apparatus forproviding a logical separation of a customer device and a service deviceconnected to a data storage system. A data storage system includesstorage array and a switch that is configurable to create numerousnetwork topologies within the system and to maintain separatecommunications paths between different computerized devices or networksand the storage array. For example, a user device and a service device,such as a system diagnosis device, can connect to the storage arraythrough the switch. In order to isolate interaction or communicationbetween the user and service devices, the switch can be logicallypartitioned into two distinct switches to form two distinct, isolatedcommunications paths between the devices and the storage array. Withisolated communications pathways established in the switch, in use, theservice device is unable to access the user device coupled to thestorage array. As such, the isolated communications pathways limit orprevent the service device from accessing data stored on the user deviceor from spreading potentially malicious data or files, such as computerviruses to the user device.

FIG. 1 illustrates an arrangement of a data storage system 20. Thesystem 20 includes a data storage array 22 (e.g., a configuration ofmagnetic disk drives) having a storage processor 24 and a communicationsmanagement device 26 coupled to the storage processor 24. The storagearray 22 is configured to store and retrieve data for one or moreexternal devices. In one arrangement, the storage array 22 is configuredas a storage area network (SAN) that includes a collection of storagearrays 22 that are networked with each other and with a number ofcomputer systems. The SAN operates as a server to serve data stored inthe storage arrays 22 to end-user computers or systems. In onearrangement, the storage array 22 includes a network attached storage(NAS) device, such as a gateway or a server, which forms a front-end tothe storage array 22.

The storage processor 24 is configured to perform load and storeoperations on the storage array 22 on behalf of the external devices.The storage processor 24 is also configured to provide the externaldevices, such as user devices 31 and service devices 33, access to thestorage array 22. In one arrangement, the storage processor 24 includesa management port 28 and a service port 30. In use, a user device 31utilizes the management port 28 to load and store data relative to thestorage array 22 while a service device 33 utilizes the storage port 30to diagnose and service the storage array 22. One of ordinary skill inthe art will understand that the user device 31 can be a stand alonecomputer device or a data communications device, such as a router orswitch, which allows connection of multiple computerized devices to thestorage processor 24.

The communications management device 26 is configured to isolateinteraction or communication between the user and service devices 31, 33when coupled to the storage array 22. In one arrangement, thecommunications management device 26 includes a first port 32, a secondport 34, and a switch 36 electrically coupled to the first and secondports 32, 34. In one arrangement, each of the ports 32, 34 is configuredas an Ethernet port, such as an RJ45 port, to allow connection of a userdevice or network 31 and a service device or network 33 to thecommunications management device 26 using a cable, such as atwisted-pair Ethernet cable.

The switch 36, such as a Broadcom 532E 10/100Base-T/TX Ethernet switchis configured to electrically couple the ports 32, 34 of the device 26to the ports 28, 30 of the storage processor 24 through an electricalconnection 38. For example, the communications management device 26 caninclude a midplane connector 38, such as a Metral series connectordistributed by FCI (FCI, France), that couples to the storage processor24 through a midplane 40. In such an arrangement, the communicationsmanagement device 26 is configured as a field replaceable unit (FRU)that can be electrically coupled to, or decoupled from, the storagearray 22.

In order to isolate interaction or communication between the user andservice devices 31, 33, in one arrangement, a software algorithmconfigures a virtual local area networks (VLAN) associated with theswitch 36 to create two distinct, isolated communications paths 42, 44.For example, as illustrated in FIG. 1, the first communications path 42allows communication between a user device 31 coupled to the first port32 and the management port 28 of the storage processor 24 while thesecond communications path 44 allows communication between a servicedevice 33 coupled to the second port 32 and the service port 30 of thestorage processor 24. The use of separate isolated communications paths42, 44 minimizes or prevents the device 33 coupled to the second port 34from accessing the device 31 coupled to the first port 32 and viceversa. The switch 36 in this configuration, therefore, provides a levelof security to the devices 31, 33 coupled to the storage array 22 andminimizes the exchange of potentially damaging files, such as computerviruses, between the devices 31, 33.

FIG. 2 shows a procedure 100 describing operation of the communicationsmanagement device 26.

In step 102, the communications management device 26 connects the switch36 of the communications management device 26 with the storage processor24 of the storage array 22, the storage processor 24 having themanagement port 28 and the service port 30, the management port 28configured to provide a first device 31 with access to the storage array22 and the service port 30 configured to provide a second device 33 withaccess to the storage array 22. In one arrangement, when thecommunications management device 26 physically couples to the storageprocessor 24, the connection between the switch 36 and the storageprocessor can be formed as a result of an exchange of network addressesbetween the communications management device 26 and the storageprocessor 24 in an autonegotiation procedure.

In step 104, the communications management device 26 configures avirtual local area network of the switch 36 to establish a firstcommunications path 42 of the switch 36 and a second communications path44 of the switch 36, the first communications path 42 being isolatedform the second communications path 44. By partitioning the switch 36into two separate, logical switches, the communications managementdevice 26 effectively isolates the first port 32 and the first network31 from the second port 34 and the second network 33. In onearrangement, the communications management device 26 establishes thefirst and second communications paths 42, 44 on the switch 36 utilizinga software application, as will be described below. However in anotherarrangement, the switch 36 can be configured in hardware, such as by amanufacturer of the switch 36 to establish the first and secondcommunications paths 42, 44.

In step 106, the communications management device 26 conveys databetween the first port 32 of the communications management device 26 andat least one of the management port 28 and the service port 30 of thestorage processor 24 using the first communications path 42 and betweena second port 34 of the communications management device 26 and at leastone of the management port 28 and the service port 30 of the storageprocessor 24 using the second communications path 44. For example, asillustrated in FIG. 1, the communications management device 26 hasconfigured the VLAN of the switch 36 such that the switch 26 forms thefirst communications path 42 between the first port 32 and themanagement port 28 of the storage processor 24 and forms the secondcommunications path 44 between the second port 34 and the service port30 of the storage processor 24. However, the communications managementdevice 26 can configure the VLAN of the switch 36 in any number of ways.For example, the communications management device 26 can configure theVLAN of the switch to form a first communications path 42 between thefirst port 32 and the service port 30 of the storage processor 24 and asecond communications path 44 between the second port 34 and themanagement port 28 of the storage processor 24.

By maintaining separate isolated communications paths 42, 44 in theswitch 26, the communications management device 26 allows the connectionof a service device 33 to the storage array 22 to provide diagnosis andservice functions while providing a level of security to an attacheduser device 31. For example, with separate communications paths 42, 44established in the switch 36 between the first and second ports 32, 34,when a technician attaches a service device 33 to the second port 34,the service device 33 is unable to detect the presence of, or access,the user device 31 coupled to the first port 32 through the storageprocessor 24. As such, the separate communications paths 42, 44 limit orprevent the service device 33 from accessing data stored on the userdevice 31 and from spreading potentially malicious data or files, suchas computer viruses to the user device 31.

As indicated above, the VLAN of the switch 36 can be configured tocreate various network topologies within the system 20 in order tomaintain separate communications paths between different computerizeddevices or networks 31, 33 coupled to the storage array 22. It should beunderstood that the switch 36 can be configured using a number ofdifferent mechanisms. For example, in one arrangement, an externalcontroller, such as the storage processor 24 is operable to configurethe VLAN of the switch 36. In another arrangement, the communicationsmanagement device 26 includes a local controller (e.g., disposed on thesame circuit board as the switch 36) used to configure the VLAN. Thelocal controller provides the communications management device 26 with alevel of functionality separate from the functionality storage processor24 or storage array 22. Description of the communications managementdevice 26 having such a controller is provided below.

FIG. 3 illustrates an arrangement of the communications managementdevice 26 having a controller 50 electrically coupled to the switch 36via interface 51, such as a four-wire serial peripheral interface (SPI).The controller 50 is operable to perform configuration and diagnosticsoperations with respect to the switch 36 and to control a set of statusindicators 54, such as light emitting diodes, associated with thecommunications management device 26. In one arrangement, the controller50 is a Cypress Microcontroller model number CY8C27443, distributed byCypress Semiconductor Corporation. As illustrated, the controller 50includes an I2C switch (e.g., isolation module) 52 that allows forelectrical communication between the controller 50 and the storageprocessor 24 over an I2C bus 56 and that isolates the controller 50 fromthe bus 56 (e.g., in the event that the controller 50 holds ether thedata or clock lines low). In one arrangement, the I2C switch 52 is aPhilips PCA9546 I2C switch, distributed by Philips Semiconductors.

The controller 50, in one arrangement, is operable to configure the VLANon the switch 36 based upon the requirements of the storage array 22(FIG. 1). For example, when the controller 50 electrically couples tothe storage processor 24, the controller 50 detects a configurationcharacteristic 58 of the storage array 22 where the configurationcharacteristic 58 indicates a particular configuration of the storagearray 22. For example, as indicated above, the storage array 22 can beconfigured as a storage area network (SAN) or can be configured toinclude a network attached storage (NAS) device, such as a gateway or aserver, which forms a front-end to the storage array 22. Theconfiguration characteristic 58, therefore, allows the controller 50 todetect the “type” of storage array 22 to which it is connected andallows the controller 50 to configure the switch 50 to provide certaincommunication pathways 42, 44 between the first and second ports 32, 34of the communications management device 26 and the management andservice ports 28, 30 of the storage processor 24 based upon the storagearray “type.”

FIG. 4 illustrates an arrangement of the data storage system 20 wherethe storage array 22 is configured as part of a SAN. In such anarrangement, when the communications management device 26 electricallycouples to the storage processor 24, the controller 50 detects aconfiguration characteristic 58-1 indicating that the storage array 22is configured as part of the SAN. Detection of the configurationcharacteristic 58-1 can occur in a number of ways. In one arrangement,the controller 50 receives the configuration characteristic 58-1 as anelectric signal from the storage processor 24 via the bus 56 where thesignal identifies the SAN configuration of the storage array 22. Inanother arrangement, the controller 50 is configured or encoded with theconfiguration characteristic 58-1 as a default. As such, upon electricalcoupling to the storage processor 24, the controller 50 automaticallydetects the SAN configuration of the storage array 22.

As a result of detecting the storage array 22 being part of the SAN, thecontroller 50 configures the switch 36 to provide isolatedcommunications paths between the first and second ports 32, 34 of thecommunications management device 26 and the management and service ports28, 30 of the storage processor 24, respectively. For example, asillustrated in FIG. 4, the controller 50 configures a VLAN of the switch26 to establish a first isolated communications path 42 on the switch 36for communications between the first port 32 and the management port 28and to establish a second isolated communications path 44 on the switch36 for communications between the second port 34 and the service port30. As such, the controller 50 isolates the ports 32, 34 to minimize orprevent interaction or communication between a user device 31 coupled tothe first port and a service device 33 coupled to the second port 34.

FIG. 5 illustrates another arrangement of the data storage system 20where the storage array 22 is configured to include a NAS device 60.With such a configuration, the storage processor 24 and storage array 22are connected between a control station 59 (e.g., a device configured toprovide connection of one or more user devices 31) and the NAS device 60in a “daisy chain” configuration. As a result, one port 28 of thestorage processor 24 is required to provide the control station 59 withaccess to the storage array 22 while the other port 30 of the storageprocessor 24 is required to provide the NAS device 60 with access to thestorage array 22.

In such an arrangement, when the communications management device 26electrically couples to the storage processor 24, the controller 50detects a configuration characteristic 58-2 indicating that the storagearray 22 includes a NAS device 60. For example, upon electrical couplingof the communications management device 26 to the storage processor 24,the controller 50 receives the configuration characteristic 58-2, suchas an electric signal, from the storage processor 24 via the bus 56.Based upon the configuration characteristic 58-2, the controller 50configures the switch 50 such that communications from the first andsecond ports 32, 34 are directed to the management port 28 on thestorage processor 24. As such, the controller 50 disables communicationsbetween the first and second ports 32, 34 and the service port 30,thereby allowing the service port 60 to connect to the NAS device 60 toallow data communication between the NAS device 60 and the storage array22.

As indicated in FIG. 5, when the controller 50 configures a VLAN of theswitch 50 the controller 50 establishes a first isolated communicationspath 42 on the switch 36 for communications between the first port 32 ofthe device 26 and the management port 28 and establishes a secondisolated communications path 44 on the switch 36 for communicationsbetween the second port 34 of the device 26 and the management port 34.However, in this arrangement, because a single control station 59, asopposed to a user device 31 and service device 33, couples to the firstand second ports 32, 34, the control station 59 can requireintercommunication between the first and second ports 32, 34. In onearrangement, when the controller 50 establishes the first and secondcommunications paths 42, 44 on the switch 36, the controller alsoestablishes a third communications path 45 between the first and secondisolated communications paths 42, 44 to provide communications betweenthe ports 32, 34 and allow data transfer therebetween.

As indicated with respect to FIGS. 1, 4, and 5, the data storage system20 includes a storage array 22 having a single storage processor 24 thatis coupled to a single communications management device 26. However, inan arrangement shown in FIGS. 6A and 6B, the data storage system 20includes multiple storage processors and multiple communicationsmanagement devices to provide failover redundancy in the system 20.

In FIGS. 6A and 6B, the data storage system 20 includes first and secondstorage processors 24-1, 24-1 interconnected with first and secondcommunications management devices 26-1, 26-2 by the midplane 40. Each ofthe first and second communications management devices 26-1, 26-2 areconfigured as a field replaceable units (FRU) that can be electricallycoupled to, or decoupled from, the midplane 40. Additionally, thecommunications management devices 26-1, 26-2 are “hotswappable,”allowing the devices 26-1, 26-2 to be decoupled from andrecoupled to the midplane 40 during operation of the system 20 withoutaffecting the operability of the system 20.

As indicated above, the system 20 shown in FIGS. 6A and 6B is configuredto provide failover redundancy. For example, the data storage system 20includes a connection 66, such as a Common Management Information (CMI)path, between the first and second storage processors 24-1, 24-1. Such aconnection 66 allows continued operation of the system 20 in the eventof failure of one of the communications management devices 26-1, 26-2.For example, assume the first communications management device 26-1fails. In such a case, a user device 31 or a service device 33 coupledto the second communications management devices 26-2 can access eitherof the management ports 28-1, 28-2 or the service ports 30-1, 30-2,respectively, through the connection 66 to access the storage array 22.

The midplane 40 includes multiple locations or slots 80 for coupling ofthe communications management devices 26 to the storage processors 24.For example, the midplane 40 includes a first slot 80-1 that provides anelectrical connection with the first communications management device26-1 and a second slot 80-2 that provides an electrical connection withthe second communications management device 26-1. The midplane 40 isfurther configured, such as by a hard wiring scheme, to provide datacommunication between the first port 32-1, 32-2 of each device 26-1,26-2 and the first service processor 24-1 and between the second port34-1, 34-2 of each device 26-1, 26-2 and the second service processor24-1. For example, as shown in FIG. 6A, the midplane 40 provideselectrical coupling between the first port 32-1 of device 26-1 and themanagement port 28-1 of the first storage processor 24-1, between thesecond port 34-1 of device 26-1 and the service port 30-2 of the secondstorage processor 24-2, between the first port 32-2 of device 26-2 andthe service port 30-1 of the first processor 24-1, and between thesecond port 34-2 of the second device 26-2 and the management port 28-2of the second storage processor 24-2. Such a connection scheme providesfailover redundancy in the system 20 to allow a user device 31 orservice device 33 to access the storage array 22 from either of thecommunications management devices 26-1, 26-2.

In one arrangement, the locations of the first and second ports 32, 34on each of the devices 26-1, 26-2 are “fixed” relative to each other.For example, as illustrated in FIG. 1, the first port 32 is disposed onthe communications management device 26 in a fixed location that isabove the second port 34. In such an arrangement, when thecommunications management devices 26-1, 26-2 are coupled to therespective slots 80-1, 80-2, the wiring configuration of the midplane 40effectively “swaps” or reverses the functionality of the ports 34, 34.For example, returning to FIG. 6, when a communications managementdevice 26 is inserted into the first slot 80-1, the first or top port32-1 electrically couples to a management port 28 while the second orbottom port 34-1 electrically couples to a service port 30 and when acommunications management device 26 is inserted into the second slot80-2, the first or top port 32-2 electrically couples to a service port30 while the second or bottom port 34-2 electrically couples to amanagement port 30.

In order to provide consistency between the relative location of a port(e.g., top or bottom) and its functionality (e.g., to providecommunication with either a management port or a service port), in onearrangement, the communications management device 26 is operable toconfigure the topology of the switch 56 based upon the location or slot80 into which the communications management device 26 is inserted. Forexample, as shown in FIG. 6A, the system 20 provides the communicationsmanagement device 26 with a coupling characteristic 70 that indicates tothe controller 50 the slot or location 50 of the communicationsmanagement device 26 relative to the midplane 40. In one arrangement,the coupling characteristic 70 is configured as a bit code signaldelivered to the communications management device 26 by the midplane 40.Based upon the coupling characteristic 70 received, the controller 50configures the network topology of the switch 36 in a particulararrangement.

For example, as indicated in FIG. 6B, when the communications managementdevice 26-1 electrically couples to the midplane 40 in the first slot80-1, the controller 50-1 receives a coupling characteristic 70-1, suchas the bit code “01”, from the midplane 40 via bus 56-1, which informsthe controller 50 as to the location 80-1 of the device 26-1. Based uponthe coupling characteristic 70-1, the controller 50 configures the VLANof the switch 36-1 to establish a first communications path 42-1 betweenthe top port 32-1 of the communications management device 26-1 and themanagement port 28-1 and to establish a second communications path 44-1between the bottom port 34-1 of the communications management device26-1 and the service port 30-2.

Also as illustrated in FIG. 6B, when the communications managementdevice 26-2 electrically couples to the midplane 40 in the second slot80-2, the controller 50-2 receives a coupling characteristic 70-2, suchas the bit code “10”, from the midplane 40 via bus 56-2, which informsthe controller 50-2 as to the location 80-2 of the device 26-2. Basedupon the coupling characteristic 70-2, the controller 50-2 configuresthe VLAN of the switch 36-2 to establish a first communications path42-2 between the top port 32-2 of the communications management device26-2 and the management port 28-2 and to establish a secondcommunications path 44-2 between the bottom port 34-2 of thecommunications management device 26-2 and the service port 30-1. Withsuch a configuration, a user device 31 can always couple to the top port32 on either communications management device 26-1, 26-2 to access thestorage array 22 and a service device can always couple to the bottomport 34 on either communications management device 26-1, 26-2 to accessthe storage array 22. The use of the coupling characteristic 70 toconfigure the switch 70, therefore, minimizes or limits potential userconfusion when attaching an electronic device (e.g., user device orservice device) to the storage array 22.

While this invention has been particularly shown and described withreferences to preferred embodiments thereof, it will be understood bythose skilled in the art that various changes in form and details may bemade therein without departing from the spirit and scope of theinvention as defined by the appended claims.

For example, as indicated above with respect to FIG. 3, theconfiguration characteristic 58 indicates, to the communicationsmanagement device 26, a configuration of the storage array 22. Forexample, the storage array 22 can be configured as a storage areanetwork (SAN) or can be configured to include a network attached storage(NAS) device, such as a gateway or a server, which forms a front-end tothe storage array 22. The configuration characteristic 58 indicates tothe controller 50 the “type” of storage array 22 to which the device 26is connected, either a SAN or a NAS device. Such description is by wayof example only. While the configuration characteristic 58 can indicateconnection to a either a SAN or a NAS device, the configurationcharacteristic 58 can indicate connection of the communicationsmanagement device 26 to other types of storage arrays as well.

In another example, as illustrated in FIGS. 6A and 6B, the data storagesystem includes two storage processors 24-1, 24-1 and two communicationsmanagement devices 26-1, 26-1 to provide failover redundancy in thesystem 20. Such illustration is by way of example only. In onearrangement, more than two storage processors 24-1, 24-1 and twocommunications management devices 26-1, 26-1 can be used to providefailover redundancy.

In another example, as illustrated in FIGS. 6A and 6B, eachcommunications management device 26-1, 26-2 receives connectioninformation 70-1, 70-2 from the midplane 40. Such illustration is by wayof example only. In one arrangement, each communications managementdevice 26-1, 26-2 receives the connection information from one or bothof the storage processors 24-1, 24-2. For example, the firstcommunications management device 26-1 can receive connection information70-1 from the first storage processor 24-1 and the second communicationsmanagement device 26-2 can receive connection information 70-2 from thesecond storage processor 24-2.

In another example, as indicated above with respect to FIGS. 6A and 6B,the midplane 40 is configured (e.g. hard wired) to provide electricalcoupling between the ports 32, 34 of the communications managementdevice 26 and the ports 28, 30 of the storage processor 24. Suchdescription is by way of example only. In one arrangement, the midplane40 includes a communications management device connection 68 that allowselectrically couples the switches 36-1, 36-2 of the communicationsmanagement devices 26-1, 26-2. Such an arrangement, for example, allowsa service device 33 to access either the first service port 30-1 or thesecond service port 30-2 from either of the communications managementdevices 26-1, 26-2. For example, in the case where the service device 33electrically couples to the port 34-1 of the first communicationsmanagement device 26-1, the service device 33 can access the firstservice port 30-1 through the first switch 36-1 and can access thesecond service port 30-2 through the second switch 36-2 via thecommunications management device connection 68.

1. In a communications management device, a method of forming acommunication pathway with a storage array, comprising: connecting aswitch of the communications management device with a storage processorof the storage array, the storage processor having a management port anda service port, the management port configured to provide a first devicewith access to the storage array and the service port configured toprovide a second device with access to the storage array; configuring avirtual local area network of the switch to establish a firstcommunications path of the switch and a second communications path ofthe switch, the first communications path being isolated form the secondcommunications path; and conveying data between (i) a first port of thecommunications management device and at least one of the management portand the service port of the storage processor using the firstcommunications path and (ii) a second port of the communicationsmanagement device and at least one of the management port and theservice port of the storage processor using the second communicationspath.
 2. The method of claim 1, comprising: detecting a configurationcharacteristic associated with the storage array; and based upon theconfiguration characteristic, configuring the VLAN of the switch toestablish the first communications path of the switch and the secondcommunications path of the switch, the first communications path beingisolated form the second communications path.
 3. The method of claim 2,wherein: detecting comprises detecting, as the configurationcharacteristic, that the storage array is configured as part of astorage area network (SAN); and based upon the storage array beingconfigured as part of the SAN, configuring comprises configuring theVLAN of the switch to establish the first communications path of theswitch between the first port of the communications management deviceand the management port of the storage processor and to establish thesecond communications path of the switch pathway between the second portof the communications management device and the service port of thestorage processor, the first communications path being isolated form thesecond communications path.
 4. The method of claim 2, wherein: detectingcomprises detecting, as the configuration characteristic, that thestorage array is configured as part of a network attached storage (NAS)system; and based upon the storage array being configured as part of theNAS system, configuring comprises configuring the VLAN of the switch toestablish the first communications path of the switch between the firstport of the communications management device and the management port ofthe storage processor and between the second port of the communicationsmanagement device and the management port of the storage processor, thefirst communications path being isolated form the second communicationspath.
 5. The method of claim 1, wherein: connecting the switch comprisesconnecting the switch of the communications management device with amidplane to access one of a first storage processor and a second storageprocessor of the storage array, each of the first storage processor andsecond storage processor including a management port and a service port,each management port configured to provide a first network with accessto the storage array and each service port configured to provide asecond network with access to the storage array; detecting a couplingcharacteristic indicating connection of the switch with one of a firstmidplane location and a second midplane location; and based upon thecoupling characteristic, configuring the VLAN of the switch to establishthe first communications path of the switch between the first port ofthe communications management device and the management port of one ofthe first storage processor and the second storage processor and toestablish the second communications path of the switch between thesecond port of the communications management device and the service portof one of the first storage processor and the second storage processor.6. The method of claim 5, wherein the first port has a first fixedlocation on the communications management device and the second port hasa second fixed location on the communications management device,relative to the first port.
 7. The method of claim 1, further comprisingestablishing a communications management device connection between theswitch of the communications management device and a second switchassociated with a second communications management device electricallycoupled to the storage array.
 8. A communications management device,comprising: a first port, a second port, a switch electrically coupledto the first port and the second port, and a controller electricallycoupled to the switch, the controller configured to: connect the switchof the communications management device with a storage processor of thestorage array, the storage processor having a management port and aservice port, the management port configured to provide a first devicewith access to the storage array and the service port configured toprovide a second device with access to the storage array; configure avirtual local area network of the switch to establish a firstcommunications path of the switch and a second communications path ofthe switch, the first communications path being isolated form the secondcommunications path, the first communications path operable to conveydata between the first port of the communications management device andat least one of the management port and the service port of the storageprocessor and the second communications path operable to convey databetween the second port of the communications management device and atleast one of the management port and the service port of the storageprocessor.
 9. The communications management device of claim 8, wherein,the controller is further configured to: detect a configurationcharacteristic associated with the storage array; and based upon theconfiguration characteristic, configure the VLAN of the switch toestablish the first communications path of the switch and the secondcommunications path of the switch, the first communications path beingisolated form the second communications path.
 10. The communicationsmanagement device of claim 9, wherein: when detecting, the controller isconfigured to detect, as the configuration characteristic, that thestorage array is configured as part of a storage area network (SAN); andbased upon the storage array being configured as part of the SAN, whenconfiguring, the controller is operable to configure the VLAN of theswitch to establish the first communications path of the switch betweenthe first port of the communications management device and themanagement port of the storage processor and to establish the secondcommunications path of the switch pathway between the second port of thecommunications management device and the service port of the storageprocessor, the first communications path being isolated form the secondcommunications path.
 11. The communications management device of claim9, wherein: when detecting, the controller is configured to detect, asthe configuration characteristic, that the storage array is configuredas part of a network attached storage (NAS) system; and based upon thestorage array being configured as part of the NAS system, whenconfiguring, the controller is operable to configure the VLAN of theswitch to establish the first communications path of the switch betweenthe first port of the communications management device and themanagement port of the storage processor and between the second port ofthe communications management device and the management port of thestorage processor, the first communications path being isolated form thesecond communications path.
 12. The communications management device ofclaim 8, wherein the controller is configured to: when connecting theswitch, connect the switch of the communications management device witha midplane to access one of a first storage processor and a secondstorage processor of the storage array, each of the first storageprocessor and second storage processor including a management port and aservice port, each management port configured to provide a first networkwith access to the storage array and each service port configured toprovide a second network with access to the storage array; detect acoupling characteristic indicating connection of the switch with one ofa first midplane location and a second midplane location; and based uponthe coupling characteristic, configure the VLAN of the switch toestablish the first communications path of the switch between the firstport of the communications management device and the management port ofone of the first storage processor and the second storage processor andto establish the second communications path of the switch between thesecond port of the communications management device and the service portof one of the first storage processor and the second storage processor.13. The communications management device of claim 12, wherein the firstport has a first fixed location on the communications management deviceand the second port has a second fixed location on the communicationsmanagement device relative to the first port.
 14. The communicationsmanagement device of claim 8, wherein the switch of the communicationsmanagement device is configured to electrically couple with a secondswitch associated with a second communications management deviceelectrically coupled to the storage array via a communicationsmanagement device connection.
 15. A data storage system, comprising: astorage array having a storage processor, the storage processor having amanagement port and a service port, the management port configured toprovide a first device with access to the storage array and the serviceport configured to provide a second device with access to the storagearray; and a communications management device, having a first port, asecond port, a switch electrically coupled to the first port and thesecond port, and a controller electrically coupled to the switch, thecontroller configured to: connect the switch of the communicationsmanagement device with the storage processor of the storage array;configure a virtual local area network of the switch to establish afirst communications path of the switch and a second communications pathof the switch, the first communications path being isolated form thesecond communications path, the first communications path operable toconvey data between the first port of the communications managementdevice and at least one of the management port and the service port ofthe storage processor and the second communications path operable toconvey data between the second port of the communications managementdevice and at least one of the management port and the service port ofthe storage processor.
 16. The data storage system of claim 15, wherein,the controller is further configured to: detect a configurationcharacteristic associated with the storage array; and based upon theconfiguration characteristic, configure the VLAN of the switch toestablish the first communications path of the switch and the secondcommunications path of the switch, the first communications path beingisolated form the second communications path.
 17. The data storagesystem of claim 16, wherein: when detecting, the controller isconfigured to detect, as the configuration characteristic, that thestorage array is configured as part of a storage area network (SAN); andbased upon the storage array being configured as part of the SAN, whenconfiguring, the controller is operable to configure the VLAN of theswitch to establish the first communications path of the switch betweenthe first port of the communications management device and themanagement port of the storage processor and to establish the secondcommunications path of the switch pathway between the second port of thecommunications management device and the service port of the storageprocessor, the first communications path being isolated form the secondcommunications path.
 18. The data storage system of claim 16, wherein:when detecting, the controller is configured to detect, as theconfiguration characteristic, that the storage array is configured aspart of a network attached storage (NAS) system; and based upon thestorage array being configured as part of the NAS system, whenconfiguring, the controller is operable to configure the VLAN of theswitch to establish the first communications path of the switch betweenthe first port of the communications management device and themanagement port of the storage processor and between the second port ofthe communications management device and the management port of thestorage processor, the first communications path being isolated form thesecond communications path.
 19. The data storage system of claim 15,wherein: the storage array comprises a midplane, a first storageprocessor and a second storage processor, each of the first storageprocessor and second storage processor having a management port and aservice port, each management port configured to provide a first networkwith access to the storage array and each service port configured toprovide a second network with access to the storage array; and thecontroller is configured to: when connecting the switch, connect theswitch of the communications management device with the midplane toaccess one of a first storage processor and a second storage processorof the storage array, each of the first storage processor and secondstorage processor including a management port and a service port, eachmanagement port configured to provide a first network with access to thestorage array and each service port configured to provide a secondnetwork with access to the storage array; detect a couplingcharacteristic indicating connection of the switch with one of a firstmidplane location and a second midplane location; and based upon thecoupling characteristic, configure the VLAN of the switch to establishthe first communications path of the switch between the first port ofthe communications management device and the management port of one ofthe first storage processor and the second storage processor and toestablish the second communications path of the switch between thesecond port of the communications management device and the service portof one of the first storage processor and the second storage processor.20. The data storage system of claim 19, wherein the first port has afirst fixed location on the communications management device and thesecond port has a second fixed location on the communications managementdevice relative to the first port.
 21. The data storage system of claim19, wherein the storage array comprises a connection that electricallycouples the first storage processor and the second storage processor.22. The data storage system of claim 15, wherein the storage arraysystem is configured to form a communications management deviceconnection between the switch of the communications management deviceand a second switch of a second communications management deviceelectrically coupled to the storage array.